字符流中第一个只出现一次的字符

字符流中第一个只出现一次的字符

题目描述

请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符”go”时,第一个只出现一次的字符是”g”。当从该字符流中读出前六个字符“google”时,第一个只出现一次的字符是”l”。

  • 用对象实现哈希表存值

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//Init module if you need
let map={}
function Init()
{
// write code here
map={}
}
//Insert one char from stringstream
function Insert(ch)
{
// write code here
if(map[ch]){
map[ch]+=1;
}else{
map[ch]=1;
}
}
//return the first appearence once char in current stringstream
function FirstAppearingOnce()
{
// write code here
for(const i in map){
if(map[i]===1){
return i
}
}
return '#'
}